Hybrid video compression consists of encoding an anchor video frame and then predictively encoding a set of predicted frames. Predictive encoding uses motion compensated prediction with respect to previously coded frames in order to obtain a prediction error frame followed by the encoding of this prediction error frame. Anchor frames and prediction errors are encoded using transform coders in a manner well-known in the art.
FIG. 1 is a block diagram of a generic hybrid video coder. Referring to FIG. 1, a MC prediction module 110 generates a motion compensated prediction from a previously decoded frame 109. A first adder 102 subtracts the motion compensated prediction from a current frame 101 to obtain a residual frame 111. A transform coder 103 converts residual frame 111 to a coded differential 104, for example by using a combination of a transform, a quantizer, and an entropy encoder. A transform decoder 105 converts coded differential 104 to a reconstructed residual frame 112, for example by using a combination of an entropy decoder, an inverse quantizer, and an inverse transform. A second adder 106 adds reconstructed residual frame 112 to the motion compensated prediction from MC prediction module 110 to obtain a reconstructed frame 113. A delay element “Z-1” 108 stores the reconstructed frame for future reference by MC prediction module 110.
Transform coded frames incur quantization noise. Due to the predictive coding of frames, quantization noise has two adverse consequences: (i) the quantization noise in frame n causes reduced quality in the display of frame n, (ii) the quantization noise in frame n causes reduced quality in all frames that use frame n as part of their prediction.
Quantization artifact removal from images is a well-known problem. For a review and many references, Shen & Kuo, “Review of Postprocessing Techniques for Compression Artifact Removal,” Journal of Visual Communication and Image Representation, vol. 9, pp. 2-14, March 1998.
For video, various types of in-the-loop filters are well-known and have become part of earlier standards. See, for example, MPEG4 Verification Model, VM 14.2, pp. 260-264, 1999, as well as ITU-T Recommendation H.261.
Prior solutions are typically limited to quantization noise produced by block transform coders. Robust solutions that handle block, as well as non-block, transforms (such as wavelets, lapped orthogonal transforms, lapped biorthogonal transforms) are not in the reach of the related art. This is because related art assumes transform coding is done using block transforms and that quantization noise mostly occurs at the boundaries of transform blocks. These prior solutions thus apply filtering around block boundaries. For non-block transforms, there are no transform block boundaries (in fact, for transforms such as wavelets and lapped transforms, there are no well-defined spatial transform boundaries since the transform basis functions overlap). Hence, these previously used solutions cannot determine where quantization noise occurs.
Prior solutions have been applied to video frames that have smoothly varying pixel values. This is because prior solutions are derived using smooth image models. The filters derived are typically restricted to low-pass filters. These are not applicable on many types of image regions, such as on edges, textures, etc.
Related art is typically restricted to a single type of quantization artifacts. Techniques typically specialize on blocking artifacts, or ringing artifacts, or other types of artifacts without providing a general means for addressing all types of artifacts.
The performance of prior techniques (in a rate-distortion sense and in a visual quality sense) is typically not high enough and their applicability not broad enough to justify the complexity of their incorporation in a video codec.